package com.hotelvip.service;

import com.hotelvip.common.pojo.PageObject;
import com.hotelvip.entity.SysUser;

import java.util.List;

/**
 * 用户模块
 * @author Lzh
 * @date 2020/11/30 14:05
 */
public interface SysUserService {
    /**
     * 添加用户
     * @param sysUser 用户,Integer[]roleIds
     * @param roleIds
     * @return
     */
    int addUser(SysUser sysUser, Long[] roleIds);
    /**
     * 修改/更新密码
     * @param sourcePassword 原密码
     * @param newPassword 新密码
     * @param cfgPassword 确认密码
     * @return
     */
    int updateUserPassword(String sourcePassword,String newPassword,String cfgPassword);
    /**
     * 基于id查找多用户
     * @param id
     * @return
     */
    SysUser findUserById(Integer id);

    /**
     * 修改用户信息和权限
     * @param sysUser
     * @return
     */
    int updateUser(SysUser sysUser);

    /**
     * 修改用户状态
     * @param id
     * @param status
     */
    void updateStatus(Integer id, Integer status);

    /**
     * 查找用户
     * @param pageCurrent 当前页码数
     * @param pageSize  页面大小
     * @return
     */
    PageObject<SysUser> findSysUsers(Integer pageCurrent,Integer pageSize);

    /**
     * 登录操作，作用记录日志
     * @param username
     */
    void doLogin(String username);
    /**
     * 注销操作，作用记录日志
     */
    void doLogout();

    /**
     * 查询员工介绍人
     * @param key
     * @return
     */
    List<SysUser> selectName(String key);
}
